package com.htfyun.serialport.uartservo.AX12_ServoUpdate;

import com.htfyun.serialport.uartservo.ServoControlAttr;

public enum AX12Update_instructionAttr {
    none((byte) 0x00),
    handshake((byte) 0x01),//握手(子命令:0x01)。握手时会附带整个升级的bin文件大小
    eraser((byte) 0x02),//擦除(子命令:0x02)。如果ID为0xfe，则会擦除保存的参数，否则保留
    write((byte) 0x03),//写入(子命令:0x03)。每次写入，都会返回现在已经写入的数据大小，如果维持不变请重发。
    ;
    private final byte instruction;

    AX12Update_instructionAttr(byte instruction) {
        this.instruction = instruction;
    }

    public byte getInstruction() {
        return instruction;
    }

    public byte[] getUpdateInstruction() {
        return new byte[]{UPDATE_CMD, getInstruction()};
    }

    private static final byte UPDATE_CMD = (byte) 0x97;//升级命令为0x97, 主命令

}
